1. Field of the Invention
This invention relates to the field of computer memory allocation and deallocation. Specifically, this invention is a new and useful method, apparatus, system, and computer program product for using generational garbage collection techniques to automatically reclaim garbage nodes from a heap memory shared by a plurality of processing units.
2. Background
Memory allocation and deallocation techniques have become very important in structured programming and object oriented programming methodologies. Memory allocated from a heap can be used to store information. Often this information is an instantiated object within an object-oriented paradigm. An allocated portion of heap memory is a node. The subsequently described techniques apply to both nodes that contain data and nodes that are instantiated objects. These nodes are explicitly allocated by a program. However, many modem systems use heap-memory garbage collection techniques to recover previously allocated nodes that are no longer used. Additionally, modem computers often have multiple processing units that can access a shared heap memory, with each processing unit allocating nodes in the shared heap (thus mutating the shared heap) and each processing unit being capable of performing garbage collection on the shared heap.